package com.matt.domain.teaching;

import com.matt.commons.model.Domain;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.util.Date;

/**
 * *******************************
 * Created by Ron.
 * form com.matt
 * on 2018/1/18
 * 官方公共课程
 * *******************************
 */
@Entity
@Table(name = "course_official")
@Data
@EqualsAndHashCode(callSuper = true)
public class CourseOfficial extends Domain {

    @Column(name = "name", columnDefinition = "varchar(50) COMMENT '名称'")
    private String name;

    @Column(columnDefinition = "int default 0  COMMENT '课时'")
    private Integer durationTime = 0;

    @Column(columnDefinition = "varchar(32) COMMENT '适用对象id'")
    private String targetObjectId;

    @Column(columnDefinition = "int default 0  COMMENT '起始月龄'")
    private Integer beginMonth = 0;

    @Column(columnDefinition = "int default 0   COMMENT '截止月龄'")
    private Integer endMonth = 0;

    @Column(columnDefinition = "varchar(50) COMMENT '核心能力目标' ")
    private String coreCompetence;

    @Column(columnDefinition = "varchar(255) COMMENT '综合技能目标' ")
    private String integratedSkill;

    @Column(columnDefinition = "varchar(500) COMMENT '综合教学目标--爱商'")
    private String goalLoveQuotient;

    @Column(columnDefinition = "varchar(500) COMMENT '综合教学目标--中国传统文化'")
    private String goalTraditionalCulture;

    @Column(columnDefinition = "varchar(500) COMMENT '综合教学目标--国家责任'")
    private String goalStateResponsibility;

    @Column(columnDefinition = "varchar(500) COMMENT '综合教学目标--科技和其它'")
    private String goalTechnologyOther;

    @Column(columnDefinition = "longtext COMMENT '用具准备'")
    private String prepareTool;

    @Column(columnDefinition = "longtext comment '环节'")
    private String linkItems;

    @Column(columnDefinition = "longtext comment '观测点'")
    private String observerPoints;

    @Column(columnDefinition = "varchar(500) COMMENT '视频地址'")
    private String videoUrl;

    @Column(columnDefinition = "varchar(500) COMMENT '视频转码地址'")
    private String videoSSUrl;

    @Column(columnDefinition = "longtext comment '附件'")
    private String attachments;

    @Column(name = "typeCode", columnDefinition = "int default 3 COMMENT '课程类型码'")
    private Integer typeCode;

    @Column(name = "typeName", columnDefinition = "varchar(255) COMMENT '课程类型名称'")
    private String typeName;

    @Column(name = "createdId", columnDefinition = "varchar(32) COMMENT '创建人Id'")
    private String createdId;

    @Column(columnDefinition = "int default 0 COMMENT '0：启用，1：禁用'")
    private Integer status = 0;

    @Column(name = "lastModified", columnDefinition = " datetime DEFAULT NOW() COMMENT '最后修改时间' ")
    private Date lastModified = new Date();

    @Column(name = "lastModifiedId", columnDefinition = "varchar(32) COMMENT '最后修改人Id'")
    private String lastModifiedId;

    @Column(name = "lastModifiedName", columnDefinition = "varchar(50) COMMENT '最后修改人名称'")
    private String lastModifiedName;

    @Transient
    private String targetObjectName;
}
